https://arxiv.org/abs/2402.12289
Introduction
自動運転では、long-tailedというレアな事象に対処するのが重要である。
既存の自動運転では、3Dのセンサー→運動予測→運転計画を決めるの流れである。だが、それぞれ
- レアケースの物体を3Dセンサーからの認知取り込みができない。
- 運動予測は軌跡ベースで、物体と車両間の相互作用による動きを無視しがち。
DriveVLMは、Vision Language Modelを用いて、これらを全部理解させたいというもの。Chain of Thoughtによる思考の誘導を行い、この3つのステップを全部1つのモデルで行わせたもの。各ステップの間でVLMは知識が残っているので、本質的により良い結果を生みやすいらしい。
ただしVLMの欠点は計算が重く、空間的な根拠と推論には限界がある。
例えば、位置関係の理解が難しい。車が歩行者の前を横切るか、歩行者が車の前を横切るか。あとは静止画から、オブジェクトがこれからどう動くかの予測が難しい。
なので、DriveVLMという既存の手法とVLMのいいところどりをしたものを開発した。これは人間の脳の思考プロセスと似ているらしい。
そのうえで、シーンの理解と運転計画の立案(Scene Understanding and Planning=SUP)のタスクについての指標を提案する。
Related Works
- VLMはMiniGPT-4, LLaVA, QwenVLなどのオープンモデルがある。
- 運転計画立案は、強化学習やImitation Learningベースのものが多い。
- 最近の研究では、画像に適切なキャプションをつけることでLLMの理解を増進し適切な知識を引き出すという。
Method

- 通常のVLMによる推論を行わせる。
- 一連の動きの静止画を用意し、それをVLMに運転環境(天気、道の種類、昼か夜か、進む道の向き)を識別させる。そのうえで、オブジェクトを識別させる。
- 識別自体もVLMに行わせ、そしてObjectのbounding boxの座標を得る。
- さきほど認識させたシーンについて、指示させてVLMに各オブジェクトについて、「静止してるか動いてるか」、「オブジェクトのジェスチャーにより、今後何をするかを予測」にわけてそれぞれ分析させる。
- 運転計画の詳細な立案を最後に行う。以下の三階層のによる。上ほど小さい話。
- メタ動作 17種類の加速、減速、左折、右折などの短期的な操作。
- 決定の説明 もっと高位の運転計画について立案させる。「アクション」、「対象」、「持続時間」の3つの点について何するべきかを出力させる。
- アクション: メタ動作
- 対象: 相互作用する対象。歩行者、信号、特定の車線など。
- 持続時間: どれほど待って、いつ実行をはじめどれだけ続けるべきか。
- 軌跡の生成 決定の説明で運転計画を立てたら、その計画に従い運転したときの軌跡を出力させる。
- 一連の動きの静止画を用意し、それをVLMに運転環境(天気、道の種類、昼か夜か、進む道の向き)を識別させる。そのうえで、オブジェクトを識別させる。
- 提案手法は、「物体検知に3Dの検出手法を導入」と「2つの計画立案器」。
- 3D検出手法の導入 そもそも画像からオブジェクトを3Dオブジェクトとして検出し、そしてCVの知識でそれを今の視点に投射するときに得られるbounding boxの座標を、物体のbounding boxの座標としている。
- そのうえ、VLMの認知したbounding boxと3Dから計算して得られた投射したはずのbounding boxとの重なり具合をIoU(Intersection over Union)として計算できる。
- IoUが一定を上回ると、だいたい同じ判断していると考えられて、その物体は信頼できる検出をされているのであつかう。VLMで検出されないが3D検出ではあるのならば何もしない。3D検出されないがVLMで検出されるとVLMのを使う。
- 3D検出から得られる中心座標、向き、推定される3D軌跡などは言語にしてVLMに渡す。
- 2つの計画立案器 従来の計画立案は迅速できることから、VLMベースのものと従来のものの2つの計画立案器を共に使う。
- まずは遅いVLMの出力した軌跡を得て、次にそれを従来の計画立案器に参考の軌跡として入力させ、最新の状況に即した軌跡を予測させる。
- 3D検出手法の導入 そもそも画像からオブジェクトを3Dオブジェクトとして検出し、そしてCVの知識でそれを今の視点に投射するときに得られるbounding boxの座標を、物体のbounding boxの座標としている。
Task and Dataset
タスクについて、Scene Understanding for Planning(SUP)というものを定義した。これは、以下のようなもの。
- 周囲のカメラから得られたMulti Viewの動画と、(オプションとして)センサから得られる3D関連の情報を与えられる。
- 出力するのは「シーンの説明」、「メタ動作」、「決定の説明」、「運転予想軌跡」
- シーンの説明はGPT4に各シーンの記述から情報を抽出させて評価させる。
- メタ動作は、ルールベースで採点する。
最後にデータセットも作りました。
